<?php
if(!isset($_SESSION))
{
   session_start();
}

function montaMascara($msg="", $mask="") {
        $cMask = $mask;
        $cMsg = $msg;
        //refaz máscara
        for($i=0;$i<=strlen($cMask)-1;$i++)
            if(strlen($cMsg)-1 >= $i) //verifica se existe tantos caracteres

                if($cMask[$i] != "#" && $cMsg[$i] != $cMask[$i]) {
//Verifica se o caracter da máscara é especial, se for verifica se é igual

                    $nMsg = ""; //Cria nova mensagem
                    for($b=0;$b<=strlen($cMsg)-1;$b++) //refaz mensagem
                        if($b==$i) $nMsg = $nMsg.$cMask[$i].$cMsg[$b]; //Se


                        else $nMsg = $nMsg.$cMsg[$b];
                    $cMsg = $nMsg;
                }

        return $nMsg;
} 

/**if( !function_exists('__autoload') )
{
    function __autoload($class_name) {
    require_once '../'.$class_name . '.php';
    echo "require_once('../".$class_name . ".php');<br>";
    }**/

require_once('../Ano.php');
require_once('../Programa.php');
require_once('../Campus.php');
require_once('../Fonte.php');
require_once('../Empenho.php');
require_once('../NomePrograma.php');
require_once('../Reserva.php');
require_once('../Rateio.php');
require_once('../RateioDAO.php');
require_once('../Setor.php');
require_once('../SetorDAO.php');
require_once('../NaturezaDespesa.php');
require_once('../SubElemento.php');
require_once('../Licitacao.php');
require_once('../ProcessoDAO.php');
require_once('../PlanoInterno.php');
require_once('../Fornecedor.php');
require_once('../FornecedorDAO.php');    

$anoId = $_GET['ano'];
$acaoId = $_GET['programa'];
$fonteId = $_GET['fonteId'];
$unidadeId = $_GET['campiId'];

$ano = new Ano();
if($anoId==0){
    $anos = $ano->CarregarAnos();
}else {
    $anos[] = $ano->CarregarAno($anoId);
}

$unidade = new Campus();
$empenho = new Empenho();
if($unidadeId == 0){
    $u = $unidade->CarregarCampi();
    for($v=0;$v<count($u);$v++)
    
        if($empenho->CarregarEmpenhoPorUnidade($u[$v]->id) != NULL)
             $unidades[] = $u[$v];        
}else{                             
    $unidades[] = $unidade->CarregarCampus($unidadeId);
}                           
             
$acao = new Programa();
$fonte = new Fonte();


?>
<html>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<body style="font-size: smaller">            
           <?php
           $html='
        <table  style="width: 500px;">
            <tr>
                <td>
                    <img src="../templates/IFF.jpg"/>
                </td>
                <td style="text-align: center; vertical-align: top; width: 500px;">
                    <b>Pr&oacute;-Reitoria de Administra&ccedil;&atilde;o e Planejamento<br>
                    Departamento de Or&ccedil;amento, Planejamento e Obras<br>
                    Coordena&ccedil;&atilde;o de Or&ccedil;amento</b>
                </td>
            </tr>
        </table>                       
        <br>
        <br>
        <br>
        <br>
';
             for($i=0; $i< count($anos);$i++)
             {
                //Agrupamento Por Ano   
                $html .= '<div style="width: 810px;"><span style="font-weight: bold;">Ano:</span>&nbsp;'.$anos[$i]->ano;                            
                
                //Agrupamento Ano x Programa
                if($acaoId==0){
                    $acoes = $acao->CarregarProgramas($anos[$i]->id);
                }else{
                    $acoes[] = $acao->CarregarPrograma($acaoId);
                }
                
                for($j=0;$j< sizeof($acoes);$j++)
                {                    
                    $html .= '<div style="width: 810px;"><span style="font-weight: bold;">Ptres:</span>&nbsp;'.$acoes[$j]->codResumido.'&nbsp;&nbsp;<span style="font-weight: bold;">A&ccedil;&atilde;o Or&ccedil;ament&aacute;ria:</span>&nbsp;'.$acoes[$j]->nome;                            
                                     
                    //Agrupamento Ano x Programa x Fonte
                    if($fonteId==0){
                        $fontes = $fonte->CarregarFontes($acoes[$j]->id);
                    }else{
                        $fontes[] = $fonte->CarregarFonte($fonteId);
                    }
                    
                    for($x=0;$x<count($fontes);$x++)
                        {
                          $html .='
                                     <div style="width: 810px;font-size: smaller;" ><span style="font-weight: bold;">Fonte de Recurso:</span>&nbsp;'.$fontes[$x]->fonteRecurso.'<br><br>';
                          
                          //Agrupamento Ano x Programa x Fonte x Unidade
                          
                          for($z=0;$z<count($unidades);$z++)
                          {
                        $reservas = $empenho->CarregarEmpenhoPorFonteUnidade($fontes[$x]->id, $unidades[$z]->id);
                          if($reservas != FALSE){                              
                          $html .='
                                     <div style="width: 810px;font-size: smaller;" ><span style="font-weight: bold;">Unidade:</span>&nbsp;'.$unidades[$z]->nome.'<br><br>';
                          
                          $html .='    <table border="1" style="border-collapse: collapse; border: 0.6px solid #000;  font-size: smaller; width: 810px;">
                                            <tr>
                                            <th style="width: 55px; border:1px solid;" >Data Res.</th>
                                            <th style="width: 55px;border:1px solid;">Data Emp.</th>
                                            <th style="width: 55px;border:1px solid;">Nota Emp.</th>
                                            <th style="width: 50px;border:1px solid;">Natureza</th>
                                            <th style="width: 40px;border:1px solid;">SubElemento</th>
                                            <th style="width: 105px;border:1px solid;">Processo</th>
                                            <th style="width: 135px;border:1px solid;">Despesa</th>
                                            <th style="width: 110px;border:1px solid;">Cpf/Cnpj / Empresa</th>
                                            <th style="width: 85px;border:1px solid;">Valor Reservado</th>
                                            <th style="width: 85px;border:1px solid;">Valor Empenhado</th>
                                            </tr>';
                          //Ano x Programa x Fonte x Unidade x Empenho                          
                          $acumValorR =0;
                          $acumValorE =0;
                          for($y=0;$y<count($reservas);$y++)
                          {
                              $acumValorR = $acumValorR + $reservas[$y]->reserva->valor;
                              $acumValorE = $acumValorE + $reservas[$y]->valorEmpenho;
                              
                                                                                          
                              $html.='      <tr>
                                               <td style="width:  55px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->reserva->data.'</td>
                                                <td style="width: 55px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->dataEmpenho.'</td>    
                                                <td style="width: 55px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->numNotaEmpenho.'</td>
                                                <td style="width: 50px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->reserva->naturezaDespesa->id.'</td>    
                                                <td style="width: 40px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->reserva->subElemento->subElementoId.'</td>    
                                                <td style="width: 105px;vertical-align: middle; text-align: center;" >'.montaMascara($reservas[$y]->reserva->processo,"#####.######/####-##").'</td>
                                                <td style="width: 135px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->reserva->despesa.'</td>    
                                                <td style="width: 110px;vertical-align: middle; text-align: center;" >'.$reservas[$y]->fornecedor->cnpjCpf.' - '.$reservas[$y]->fornecedor->nome.'</td>
                                                <td style="width: 85px;vertical-align: middle;" align="right">R$&nbsp;'.number_format($reservas[$y]->reserva->valor/100,2, ',', '.').'</td>        
                                                <td style="width: 85px;vertical-align: middle;" align="right">R$&nbsp;'.number_format($reservas[$y]->valorEmpenho/100,2, ',', '.').'</td>    
                                            </tr>';  
                              
                          }             
                          }
                          if($reservas!=FALSE){
                          $html.='</table>';
                          $html.='<div style="text-align: right;"><b>Valor Total Reservado Por Unidade:<b>R$&nbsp;&nbsp;'.number_format($acumValorR/100,2, ',', '.').'</div><br>';
                          $html.='<div style="text-align: right;"><b>Valor Total Empenhado Por Unidade:<b>R$&nbsp;&nbsp;'.number_format($acumValorE/100,2, ',', '.').'</div><br><br>';
                          //fim do agrupamento Ano x Programa x Fonte x Unidade
                          $html .='</div>';
                          }
                          }
                          //fim do agrupamento Ano x Programa x Fonte
                          $html .='</div>';
                        }                
                        //fim do agrupamento Ano x Programa
                        
                        $html .='</div>';
                    }
                    // fim do agrupamento Ano
                    $html .='</div>';
             }
             
             $html .= '    </body>
                        </html>';
             //echo $html;
            require_once ('../dompdf/dompdf_config.inc.php') ; 

            $dompdf = new DOMPDF();
            $dompdf->load_html(utf8_decode($html));
            $dompdf->set_paper("a4", "landscape");
            $dompdf->render();
            $dompdf->stream("empenho.pdf");             

             ?>        

